package com.jzlin.alltools.config;


import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * Web相关配置.
 *
 * @author linjz
 * @date 2024/9/14
 */
@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Value("${cors.enabled}")
    private boolean corsEnabled;

    /**
     * cors跨域
     * @param registry
     */
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        if (corsEnabled) {
            registry.addMapping("/**") // 允许所有路径
                    .allowedOrigins("*") // 允许的来源
                    .allowedMethods("GET", "POST", "PUT", "DELETE") // 允许的请求方法
                    .allowedHeaders("*") // 允许的请求头
                    .allowCredentials(false); // 允许发送凭证（如Cookies）
        }
    }
}
